Parent এবং Child Elements এর মধ্যে নেভিগেশন

Java Technologies - জেসুপ (JSoup) - DOM ট্রাভার্সাল এবং নেভিগেশন
193

JSoup ব্যবহার করে HTML ডকুমেন্টে parent এবং child elements এর মধ্যে নেভিগেশন (navigation) করা খুবই সহজ এবং কার্যকরী। HTML ডকুমেন্টে একে অপরের মধ্যে সম্পর্কিত বিভিন্ন ট্যাগ থাকতে পারে, যেমন parent-child সম্পর্ক। JSoup এর DOM traversal ফিচার ব্যবহার করে আপনি এই সম্পর্কগুলো খুব সহজেই পরিচালনা করতে পারেন।


Parent Element এ নেভিগেট করা

HTML ডকুমেন্টের মধ্যে যদি কোন element একটি parent element এর ভিতরে থাকে, তাহলে আপনি JSoup ব্যবহার করে সেই parent element এ নেভিগেট করতে পারেন। এর জন্য parent() মেথড ব্যবহার করা হয়। এটি নির্দিষ্ট child element এর parent element কে ফিরিয়ে দেয়।

উদাহরণ:

ধরা যাক, আপনার কাছে একটি HTML ডকুমেন্ট আছে যা নিচে দেওয়া হল:

<html>
  <body>
    <div id="parent">
      <p class="child">This is a child paragraph.</p>
    </div>
  </body>
</html>

এখন, যদি আপনি <p> ট্যাগের parent ডিভ (div) ট্যাগটি খুঁজতে চান, তাহলে JSoup ব্যবহার করে তা করা সম্ভব।

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

public class JsoupExample {
    public static void main(String[] args) throws Exception {
        String html = "<html><body><div id='parent'><p class='child'>This is a child paragraph.</p></div></body></html>";

        // HTML পার্সিং
        Document doc = Jsoup.parse(html);

        // child element (p) এর parent element (div) খুঁজে বের করা
        Element p = doc.select("p.child").first();
        Element parent = p.parent();

        System.out.println("Parent Element: " + parent.tagName());  // div
    }
}

এই কোডে p.parent() মেথডটি ব্যবহার করা হয়েছে, যা প্যারাগ্রাফ ট্যাগটির parent <div> ট্যাগটি রিটার্ন করবে।


Child Element এ নেভিগেট করা

একইভাবে, আপনি parent element এর ভিতরে থাকা child elements গুলোকে সহজেই খুঁজে বের করতে পারেন। এর জন্য children() মেথড ব্যবহার করা হয়, যা একটি element এর সব child element গুলোর একটি সংগ্রহ (collection) প্রদান করে।

উদাহরণ:

ধরা যাক, আপনার কাছে নিচের মতো HTML ডকুমেন্ট আছে:

<html>
  <body>
    <div class="parent">
      <p class="child1">This is the first child paragraph.</p>
      <p class="child2">This is the second child paragraph.</p>
    </div>
  </body>
</html>

এখন, আপনি <div> ট্যাগের ভিতরে থাকা সব <p> ট্যাগ (child elements) খুঁজে বের করতে চাইছেন। এটি JSoup দিয়ে করতে পারবেন।

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

public class JsoupExample {
    public static void main(String[] args) throws Exception {
        String html = "<html><body><div class='parent'><p class='child1'>This is the first child paragraph.</p><p class='child2'>This is the second child paragraph.</p></div></body></html>";

        // HTML পার্সিং
        Document doc = Jsoup.parse(html);

        // parent element (div) থেকে সব child element (p) গুলি খুঁজে বের করা
        Element div = doc.select("div.parent").first();
        for (Element p : div.children()) {
            System.out.println("Child Element: " + p.tagName() + " Text: " + p.text());
        }
    }
}

এই কোডে div.children() মেথডটি ব্যবহার করা হয়েছে, যা <div> ট্যাগের সকল child element গুলিকে ফিরিয়ে দেবে। তারপর আপনি লুপের মাধ্যমে প্রতিটি child element এর উপর কাজ করতে পারবেন।


Parent এবং Child Element গুলির মধ্যে CSS সিলেক্টর ব্যবহার

JSoup এর মাধ্যমে CSS সিলেক্টর ব্যবহার করে parent এবং child element এর মধ্যে নেভিগেশন করা সম্ভব। CSS সিলেক্টর দিয়ে আপনি সহজেই specific element গুলো খুঁজে বের করতে পারেন।

উদাহরণ:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

public class JsoupExample {
    public static void main(String[] args) throws Exception {
        String html = "<html><body><div class='parent'><p class='child'>This is a child paragraph.</p></div></body></html>";

        // HTML পার্সিং
        Document doc = Jsoup.parse(html);

        // CSS সিলেক্টর ব্যবহার করে child element খুঁজে বের করা
        Element child = doc.select(".parent > .child").first();
        System.out.println("Child Text: " + child.text());
    }
}

এখানে .parent > .child CSS সিলেক্টর ব্যবহার করা হয়েছে যা parent element এর মধ্যে থাকা specific child element কে সিলেক্ট করবে।


সারাংশ

JSoup ব্যবহার করে HTML ডকুমেন্টের parent এবং child elements এর মধ্যে নেভিগেশন করা খুবই সহজ। parent() মেথড ব্যবহার করে আপনি একটি child element এর parent element খুঁজে পেতে পারেন, এবং children() মেথড ব্যবহার করে parent element এর সব child element খুঁজে বের করতে পারেন। CSS সিলেক্টরও ব্যবহার করা যায়, যা আপনাকে নির্দিষ্ট parent-child সম্পর্কিত elements সিলেক্ট করতে সহায়তা করে। JSoup এর এই DOM traversal ফিচারটি HTML parsing এবং manipulation এর জন্য অত্যন্ত কার্যকরী।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...